Implementing Feature Variability for Models and Code with Projectional Language Workbenches

نویسنده

  • Markus Voelter
چکیده

Product line engineering deals with managing and implementing the variability among a set of related products. We distinguish between two kinds of variability: configuration and customization. Customization variability can be described using programming language code or creative construction DSLs, whereas configuration variability is described using configuration based approaches, such as feature models. Many product lines have both kinds of variability, and they need to be integrated efficiently. This paper describes an approach for product line engineering using projectional language workbenches. These represent code and models with the same fundamental technology, enabling the mixing of models and code. They make the tight integration between several domain-specific languages possible and simple. Since they can store arbitrary information in models, it is possible to overlay configuration variability over customization variability (i.e. apply feature model-based configuration to code and models). Because of the projectional approach to editing, programs can be shown with or without the dependencies on feature models, they can even be rendered (and edited) for a specific variant. This approach leads to highly integrated and productive tools for product line development. The paper explains the approach, outlines the implementation of a prototype tool based on Jetbrains MPS and illustrates the benefits using a small product line for embedded systems.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Embedded Software Development with Projectional Language Workbenches

This paper describes a novel approach to embedded software development. Instead of using a combination of C code and modeling tools, we propose an approach where modeling and programming is unified using projectional language workbenches. These allow the incremental, domainspecific extension of C and a seamless integration between the various concerns of an embedded system. The paper does not p...

متن کامل

Projectional Language Workbenches as a Foundation for Product Line Engineering

In this paper I explain the benefits of projectional language workbenches for product line engineering. The ability to extend programming languages with domain specific concepts, mix programs (i.e. descriptions written in general purpose languages) and models (i.e. descriptions expressed with DSLs) and also overlay configurative variability to both of these promises highly integrated and produc...

متن کامل

Cedalion A Language Oriented Programming Language

Implementations of language oriented programming (LOP) are typically either language workbenches, which facilitate the development of external domain speci c languages (DSLs) with projectional editors, or host languages for internal DSLs that are parsed. In this work, we present Cedalio a novel approach to LOP, along with a prototyped programming language and workbench implementing our approach...

متن کامل

Program Committee Implementing Feature Variability for Models and Code with Projectional Language Workbenches . . . . 41 Markus Voelter Feature Oriented-programming: Back to the Future Automating Energy Optimization with Features

Feature-oriented programming has its origin in the old quest of computer science: modular composition of software “artifacts” in software development. While there exist many notions of modularity and composition, feature-oriented programming tackles the case of highly-entangled software features where typical module or component concepts fail. The reasons for this are feature interactions and d...

متن کامل

Language Modularization and Composition with Projectional Language Workbenches illustrated with MPS

The language community has had a discussion about different styles of languages for a long time: big languages with many specific concepts (ABAP, Cobol), or small languages with few, but very powerful and orthogonal concepts (Lisp, Smalltalk)? With the advent of projectional language workbenches a new class of language becomes possible that can combine the best of both approaches: modular langu...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2010